package class_code.obj_2_extends;

/**
 * 重写(override)和重载(overload)
 */

class IKUN {
    final String name = "小黑子";

    void praiseGeGe() {
        System.out.println(this.name + ":我爱我家哥哥两年了！！！");
    }
}

class NewIkun extends IKUN {

    /**
     * 同名不同参数重载，
     * 方法返回值和名称 和父类一模一样 重写
     */
    void praiseGeGe() {
        System.out.println(this.name + ":我爱我家哥哥两年半了！！！");
    }

    void praiseGeGe(String msg) {
        System.out.println(this.name + ":" + "");
    }

}

public class ExtendsDemo4 {
    public static void main(String[] args) {
        IKUN ikun = new IKUN();

        IKUN cai = new NewIkun();

        NewIkun newcai = new NewIkun();

        ikun.praiseGeGe();
        cai.praiseGeGe();
//        因为 praiseGeGe(String msg) 是子类方法，父类没有该方法所以报错
//        cai.praiseGeGe("食不食油饼！！！");
        newcai.praiseGeGe("食不食油饼！！！");

    }
}
